
import re

#边界匹配符
qqStr1 = "123456789"
qqStr2 = "1234567891" #超过9位的字符串

#1.识别QQ号字符串，QQ的长度在7-9之间
result1_1 = re.findall('\d{7,9}',qqStr1)
result1_2 = re.findall('\d{7,9}',qqStr2)
print("\n打印result1:")    
print(result1_1)          #打印['123456789']
print(result1_2)          #打印['123456789'],10位的也被匹配了

#2.可以看到上面的正则由于没有添加边界，所以10位QQ号也被匹配了，这不符合要求
#'^':  从字符串开始匹配
#'$':  从字符串结尾处匹配
result2_1 = re.findall('^\d{7,9}$',qqStr1)
result2_2 = re.findall('^\d{7,9}$',qqStr2)
print("\n打印result2:")    
print(result2_1)          #打印['123456789']
print(result2_2)          #打印[]  10位的QQ不符合要求，匹配无结果
